#!/bin/bash

################################################################################
# Copyright (C) 2008 Michiel Helvensteijn                                      #
#                                                                              #
# This file is part of the Mist compiler.                                      #
#                                                                              #
# The Mist compiler is free software: you can redistribute it and/or modify    #
# it under the terms of the GNU General Public License as published by         #
# the Free Software Foundation, either version 3 of the License, or            #
# (at your option) any later version.                                          #
#                                                                              #
# The Mist compiler is distributed in the hope that it will be useful,         #
# but WITHOUT ANY WARRANTY; without even the implied warranty of               #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the                #
# GNU General Public License for more details.                                 #
#                                                                              #
# You should have received a copy of the GNU General Public License            #
# along with the Mist compiler.  If not, see <http://www.gnu.org/licenses/>.   #
################################################################################

# Get input and output
if [ $# = 1 ]; then
	INPUT=$1
	OUTPUT=`echo $INPUT | sed 's/\(.*\)\.m/\1/'`
else
	if [ $# = 2 ]; then
		INPUT=$1
		OUTPUT=$2
	else
		echo "Error: incorrect parameters"
		exit
	fi
fi

# Count errors and report all messages
ERRORS=`./compiler $INPUT --no-output; echo $?`

# If there are no errors, generate the output
if [ $ERRORS = 0 ]; then
	./compiler $INPUT -o - --no-messages | g++ -x c++ -lgmpxx -lgmp -o $OUTPUT -
fi
